package com.feemanage.mapper;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.feemanage.domain.BizBudgetAlteration;
import com.feemanage.domain.BizProjectFeeCardBudget;
import com.feemanage.domain.BizProjectIncome;
import com.feemanage.domain.vo.AmountAlterationVO;
import com.feemanage.domain.vo.BizBudegtAlterationVo;
import com.feemanage.domain.vo.BudegtAlterationVO;
import com.feemanage.domain.vo.BudgetAmountAlterationVO;
import org.apache.ibatis.annotations.Param;

import java.util.HashMap;
import java.util.List;

public interface bizBudgetAlterationMapper extends BaseMapper<BizBudgetAlteration> {


    IPage<BizBudegtAlterationVo> selectPageList(@Param("page") Page<BizBudegtAlterationVo> page, @Param(Constants.WRAPPER) QueryWrapper<BizBudgetAlteration> wrapper);


    BudegtAlterationVO selectListOne(@Param(Constants.WRAPPER) QueryWrapper<BizBudgetAlteration> wrapper);


    List<AmountAlterationVO> selectamountAlterationList(@Param(Constants.WRAPPER) QueryWrapper<BizBudgetAlteration> wrapper);

    List<BudgetAmountAlterationVO> selectbudgetAmountAlterationList(@Param(Constants.WRAPPER) QueryWrapper<BizBudgetAlteration> wrapper);


    List<BudgetAmountAlterationVO> selectAmountAlterationList(BizBudgetAlteration budgetAlteration);


    List<HashMap<String, Integer>> selectListTotal(@Param(Constants.WRAPPER) QueryWrapper<BizBudgetAlteration> wrapper);


    List<BizBudegtAlterationVo> selectPageList(@Param(Constants.WRAPPER) QueryWrapper<BizBudgetAlteration> wrapper);

    BizProjectIncome SelectProIncome(@Param(Constants.WRAPPER) QueryWrapper<BizBudgetAlteration> wrapper);

    List<BizProjectFeeCardBudget> SelectProFeeCardBudget(@Param(Constants.WRAPPER) QueryWrapper<BizBudgetAlteration> wrapper);
}
